package cn.iocoder.yudao.module.promotion.dal.dataobject.prizedraw;

import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;

/**
 * 抽奖活动中奖 DO
 *
 * @author 芋道源码
 */
@TableName("promotion_prize_draw_lottery")
@KeySequence("promotion_prize_draw_lottery_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class PrizeDrawLotteryDO extends BaseDO {

    /**
     * 抽奖活动中奖ID
     */
    @TableId
    private Long prizeDrawLotteryId;
    /**
     * 用户编号
     */
    private Long userId;
    /**
     * 抽奖活动ID
     */
    private Long prizeDrawId;
    /**
     * 是否中奖
     */
    private Integer isLottery;
    /**
     * 抽奖活动奖品ID
     */
    private Long prizeDrawAwardsId;
    /**
     * 中奖时间
     */
    private LocalDateTime lotteryTime;
    /**
     * 过期时间
     */
    private LocalDateTime expiredTime;
    /**
     * 兑奖时间
     */
    private LocalDateTime claimTime;
    /**
     * 奖品发放状态（1：已发放（虚拟、积分），2：待兑奖，3：待发货，4：已发放（实物），5：过期未兑换）
     */
    private Integer status;
    /**
     * 奖品发放时间
     */
    private LocalDateTime issueTime;
    /**
     * 兑奖备注
     */
    private String claimRemark;
    /**
     * 发货备注
     */
    private String deliverRemark;
    /**
     * 物流类型（1：物流发货，2：虚拟发货，3：其他发货）
     */
    private Integer deliverType;
    /**
     * 物流公司编码
     */
    private String deliverCompanyCode;
    /**
     * 快递单号
     */
    private String deliverNo;
    /**
     * 用户收货地址ID
     */
    private Long memberAddressId;
    /**
     * 用户收货详细信息
     */
    private String memberAddress;


}